package com.base.moduleUser.strategy.login;

import com.base.moduleUser.entity.dto.UserLoginDTO;
import org.springframework.security.core.userdetails.UserDetails;

/**
 * 登录策略接口
 */
public interface LoginStrategy {
    /**
     * 执行登录验证
     * @param loginDTO 登录参数
     * @return 用户信息
     */
    UserDetails authenticate(UserLoginDTO loginDTO);

    /**
     * 支持的登录类型
     */
    LoginType getLoginType();
}